GtkButtonPrivate *priv = button->priv;
if ((event->window == button->priv->event_window) &&
- (event->detail != GDK_NOTIFY_INFERIOR) &&
- (gtk_widget_get_sensitive (widget)))
+ (event->detail != GDK_NOTIFY_INFERIOR))
{
priv->in_button = FALSE;
g_signal_emit (button, button_signals[LEAVE], 0);
gtk_real_button_released (GtkButton *button)
{
gtk_button_do_release (button,
- button->priv->in_button ||
- touch_release_in_button (button));
+ gtk_widget_is_sensitive (GTK_WIDGET (button)) &&
+ (button->priv->in_button ||
+ touch_release_in_button (button)));
}
static void
GtkStateType previous_state)
{
GtkButton *button = GTK_BUTTON (widget);
- GtkButtonPrivate *priv = button->priv;
if (!gtk_widget_is_sensitive (widget))
- {
- priv->in_button = FALSE;
- gtk_button_do_release (button, FALSE);
- }
+ gtk_button_do_release (button, FALSE);
}
static void